select distinct 
 ca.codice_utente A439_ID_CLIENTE,
f.codice_fattura A46_ID_BOLLETTA,
f.progressivo_fattura A46_NUMERO_FATTURA, 
to_char(f.data_emissione_fattura,'dd/mm/yyyy')  A78_DATA_EMISSIONE_BOLLETTE,

(select max(codice_contratto) from db1.bollette_forniture@pgu3 cd
                                                                       where cd.codice_gestione=b.CODICE_GESTIONE
                                                                       and cd.CODICE_bolletta=b.CODICE_BOLLETTA
                                                                     
                                                                       and cd.codice_servizio ='E')                                                A46_ID_CONTRATTO,
ca.codice_utente A43_ID_CLIENTE_FINALE,
per.nominativo_rag_soc   A44_NOMINATIVO,
concat(concat(concat (b.anno_bollettazione,'/'),concat(b.mese_bollettazione,'/')),progressivo_bollettazione) A46_ID_FATTURAZIONE,
(select to_char(max(data_inizio_c),'dd/mm/yyyy') from db1.bollette_forniture@pgu3 cd
                                                                       where cd.codice_gestione=b.CODICE_GESTIONE
                                                                       and cd.CODICE_bolletta=b.CODICE_BOLLETTA
                                                                     
                                                                       and cd.codice_servizio ='E')                                           A78_DATA_INIZIO_LETTURE,
(select to_char(max(data_fine_c),'DD/mm/yyyy') from db1.bollette_forniture@pgu3 cd
                                                                       where cd.codice_gestione=b.CODICE_GESTIONE
                                                                       and cd.CODICE_bolletta=b.CODICE_BOLLETTA
                                                                     
                                                                       and cd.codice_servizio ='E')                                           A78_DATA_FINE_LETTURE,

( competenze.totale_e+ competenze.TOTALE_F+competenze.TOTALE_n+ competenze.TOTALE_S)   A46_NON_IMPONIBILE_IVA,
 competenze.TOTALE_I      A46_IMPONIBILE_IVA,
 competenze.TOTALE_IVA      A46_IMPORTO_IVA,
 competenze.IMPORTO_COMPETENZA     A46_IMPORTO,
''  A46_RECUPERO_AZZERATE,

competenze.ARROTONDAMENTO_PRECEDENTE    A46_ARROTONDAMENTO_PREC,
 competenze.ARROTONDAMENTO_ATTUALE       A46_ARROTONDAMENTO_ATT,
 concat('IT018E',concat(substr(concat('00000000',codice_allacciamento),-7,7),substr(progressivo_utenza,-1,1)) )     POD







from db1.fatture@pgu3 f,db1.bollette @pgu3  b ,db1.contratti_aggregazioni@pgu3 ca,
persone per,competenze ,contratti co,forniture fo


where f.codice_gestione='ASM'
and f.codice_origine_fattura='B'

and f.anno_esercizio =  ^Anno esercizio aaaa;N;NUMERICO^^
and f.codice_ruolo_fatturato >= ^Ruolo Da rrr_da;N;NUMERICO^^
and f.codice_ruolo_fatturato <=  ^Ruolo a  rrr_a;N;NUMERICO^^
and b.codice_gestione='ASM'

and f.codice_fattura=b.codice_bolletta


and ca.codice_gestione='ASM'
and ca.codice_utente=b.codice_utente
and per.codice_persona =ca.codice_persona_utilizzatore
and competenze.codice_gestione='ASM'
and competenze.codice_origine_competenza='B'
and competenze.codice_competenza=b.codice_bolletta
and co.codice_gestione='ASM'
and co.codice_utente=b.codice_utente
and co.codice_servizio ='E'
and fo.codice_gestione='ASM'
and fo.codice_contratto=co.codice_contratto
and fo.codice_servizio ='E'
AND CA.CODICE_PERSONA_TITOLARE= ^CODICE_ TITOLARE;N;NUMERICO^^
